using Net35.Xrm.Sdk;
using System;
using System.Runtime.Serialization;
namespace Net35.Crm.Sdk.Messages
{
	[DataContract(Namespace = "http://schemas.microsoft.com/crm/2011/Contracts")]
	public sealed class MergeRequest : OrganizationRequest
	{
		public EntityReference Target
		{
			get
			{
				if (base.Parameters.Contains("Target"))
				{
					return (EntityReference)base.Parameters["Target"];
				}
				return null;
			}
			set
			{
				base.Parameters["Target"] = value;
			}
		}
		public Guid SubordinateId
		{
			get
			{
				if (base.Parameters.Contains("SubordinateId"))
				{
					return (Guid)base.Parameters["SubordinateId"];
				}
				return default(Guid);
			}
			set
			{
				base.Parameters["SubordinateId"] = value;
			}
		}
		public Entity UpdateContent
		{
			get
			{
				if (base.Parameters.Contains("UpdateContent"))
				{
					return (Entity)base.Parameters["UpdateContent"];
				}
				return null;
			}
			set
			{
				base.Parameters["UpdateContent"] = value;
			}
		}
		public bool PerformParentingChecks
		{
			get
			{
				return base.Parameters.Contains("PerformParentingChecks") && (bool)base.Parameters["PerformParentingChecks"];
			}
			set
			{
				base.Parameters["PerformParentingChecks"] = value;
			}
		}
		public MergeRequest()
		{
			base.RequestName = "Merge";
			this.Target = null;
			this.SubordinateId = default(Guid);
			this.UpdateContent = null;
			this.PerformParentingChecks = false;
		}
	}
}
